home *** CD-ROM | disk | FTP | other *** search
- package javax.swing;
-
- import java.awt.Component;
- import java.awt.Container;
- import java.io.InvalidObjectException;
- import java.io.ObjectInputStream;
- import java.io.ObjectInputValidation;
- import java.util.Vector;
-
- class JComponent$ReadObjectCallback implements ObjectInputValidation {
- // $FF: synthetic field
- private final JComponent this$0;
- private final Vector roots;
- private final ObjectInputStream inputStream;
-
- JComponent$ReadObjectCallback(JComponent var1, ObjectInputStream var2) throws Exception {
- this.this$0 = var1;
- this.roots = new Vector(1);
- this.inputStream = var2;
- var2.registerValidation(this, 0);
- }
-
- // $FF: synthetic method
- static void access$0(JComponent$ReadObjectCallback var0, JComponent var1) {
- var0.registerComponent(var1);
- }
-
- private void registerComponent(JComponent var1) {
- for(int var2 = 0; var2 < this.roots.size(); ++var2) {
- JComponent var3 = (JComponent)this.roots.elementAt(var2);
-
- for(Object var4 = var1; var4 != null; var4 = ((Component)var4).getParent()) {
- if (var4 == var3) {
- return;
- }
- }
- }
-
- for(int var6 = 0; var6 < this.roots.size(); ++var6) {
- JComponent var7 = (JComponent)this.roots.elementAt(var6);
-
- for(Container var5 = ((Component)var7).getParent(); var5 != null; var5 = ((Component)var5).getParent()) {
- if (var5 == var1) {
- this.roots.removeElementAt(var6--);
- break;
- }
- }
- }
-
- this.roots.addElement(var1);
- }
-
- public void validateObject() throws InvalidObjectException {
- try {
- for(int var3 = 0; var3 < this.roots.size(); ++var3) {
- JComponent var4 = (JComponent)this.roots.elementAt(var3);
- SwingUtilities.updateComponentTreeUI(var4);
- }
- } finally {
- JComponent.access$0().remove(this.inputStream);
- }
-
- }
- }
-